updated at $Date: 2023/07/06 20:30:28 $
物理的な接続形態に依存せず仮想的にグループを形成してひとつのLANとみなすものが、VLAN(Virtual LAN)です。VLANには、スイッチの物理ポート単位でVLANを形成するポートベースVLANと、パケットにタグと呼ばれるヘッダを付加してVLAN情報を格納するタグVLANとがありますが、本機能はタグVLANに対応するものです。
イーサネットヘッダに付加されるタグのフォーマットはIEEE802.1Qで下記のように定められています。
Ethernat Frame: +-------+-------+==========+----------+--------------+---+ |dst_mac|src_mac|tag header|frame_type| data |FCS| +-------+-------+==========+----------+--------------+---+ | +------------+ | v IEEE802.1Q Tag header: 4octets ・Frame type (2octets): 0x8100 ・TCI (Tag Control Information, 2octets): | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ |user_priority |CFI | V I D | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ Class of Service | (CoS, IEEE802.1p) user_priority ... CoS値とも呼ばれ、8段階の優先度を示します CFI ............. Canonical Format Indicator; 本機では 0 として扱います VID ............. VLAN Identifier; VLANを識別するための番号を格納します
user_priorityフィールドにはパケットの優先度を格納できます。任意の値を設定できるほか、IPヘッダのToSフィールドの値を反映させることも可能です。
VIDはVLANを識別するものであり、VLAN毎に設定される値が格納されます。VLANインタフェースに設定されたVIDを持つタグ付きパケットを受信した場合、そのVLANインタフェースからパケットを受信したものとして扱います。VIDが0であるパケット及び設定されていないVIDを持つタグ付きパケットを受信した場合は、破棄されます。
本機能は、スイッチングハブで設定されたタグVLAN間でのルーティングを行なう場合や、タグVLANを扱う閉域網サービスを利用する場合などに使用できます。
物理的なLANインタフェース(以下、実LAN)ひとつあたりに設定可能なVLAN数は以下のとおりです。
機種 | 最大VLAN数 | 備考 |
---|---|---|
RTX5000 | 32 | |
RTX3510 | 32 | |
RTX3500 | 32 | |
RTX3000 | 32 | Rev.9.00.25以前は8 |
RTX1300 | 32 | |
RTX1220 | 32 | |
RTX1210 | 32 | |
RTX1200 | 32 | |
RTX830 | 32 | |
NVR700W | 32 | |
NVR510 | 32 | |
上記以外の機種 | 8 | NVR500はRev.11.00.16以降対応 |
VLAN毎に設定するVIDはVLANを識別するものであるため、異なるVLANに同一のVIDを設定することはできません。
queue lan class filterコマンドのフィルタに一致するパケットを対象に、CoS値の設定やToS値からCoS値への変換を行ないます。
CoS値にToS値の値を用いる場合には、precedenceフィールドの3bitの値がそのまま反映されます。
以下の機種ではタグVLAN上のPPPoEが利用できます。複数のPPPoE回線をVLAN対応L2スイッチでトランクリンクにまとめ、RTXの1つのインタフェースに収容することができます。
機種 | 備考 |
---|---|
RTX5000 | |
RTX3510 | |
RTX3500 | |
RTX3000 | Rev.9.00.37以降対応 |
RTX1300 | |
RTX1220 | |
RTX1210 |
タグVLAN上のPPPoEを使用する場合は、pppoe useコマンドでVLANインタフェースを指定します。
pp select 1 pppoe use lan2/1
VLANインタフェースにおいても、NATやフィルタは実LANインタフェースと同等に機能させることができます。
show status vlanコマンドでVLANインタフェース毎の設定や状態が表示されます。
show status lanコマンドでは通過パケット数などが表示されます。
show arpコマンドでVLANインタフェースを指定することができます。指定したVLANインタフェースで通信が行なわれたホストとその数が表示されます。
┌────┐ │ RTX │ └┬───┘ │ タグ付きパケット トランクリンク │ ┌┴────────┐ │ スイッチ │ └┬─┬──┬─┬─┘ │ │ │ │ VLAN1 VLAN2
# vlan lan1/1 802.1q vid=10 # vlan lan1/2 802.1q vid=20 # ip lan1/1 address 192.168.10.1/24 # ip lan1/2 address 192.168.20.1/24 # save
# vlan lan1/1 802.1q vid=10
# vlan lan1/2 802.1q vid=20
実LANインタフェースlan1のサブインタフェースを定義し、VIDを設定します。
# ip lan1/1 address 192.168.10.1/24
# ip lan1/2 address 192.168.20.1/24
各VLANインタフェースにIPアドレスを設定します。
これでVLAN間の通信が可能です。この設定では、lan1/lan2インタフェースにはタグ付きパケットだけが送出されますが、ip lan1 address/ip lan2 adddressの設定により、タグのないパケットとの併用も可能です。
# save
広域イーサネット閉域網(網内ではCoS値によるQoS制御が行なわれる) │ ↑ ┌┴───┐ cos │ RTX │ └┬───┘ │ │ ↑ ─┴┬────┬── tos │ │ ┌┴──┐┌┴──┐ │ホスト││ │ └───┘└───┘
# ip lan1 address 192.168.100.1/24 # vlan lan2/1 802.1q vid=10 # ip lan2/1 address 172.16.10.2/24 # queue class filter 1 4 cos=precedence ip 192.168.100.101 * * * * # queue class filter 2 4 cos=7 ip 192.168.100.102 * * * * # queue lan2/1 class filter list 1 2 # save
# ip lan1 address 192.168.100.1/24
# vlan lan2/1 802.1q vid=10
# ip lan2/1 address 172.16.10.2/24
実LANインタフェースlan2のサブインタフェース定義し、VIDを設定します。
各インタフェースにIPアドレスを設定します。
lan2に対してはタグ付きパケットだけが送出されます。
# queue class filter 1 4 cos=precedence ip 192.168.100.101 * * * *
192.168.100.101から送出されるパケットに対する設定です。CoS値をIPヘッダのprecedenceフィールドの値から決定します。
# queue class filter 2 4 cos=7 ip 192.168.100.102 * * * *
同様に、192.168.100.102から送出されるパケットに対する設定です。CoS値を7とします。
# queue lan2/1 class filter list 1 2
class filterの定義をVLANインタフェースに適用します。
# save